<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

/**
 * 素材主表模型
 * @package App\Models
 */
class WxMaterial extends Model
{
    use SoftDeletes;
    //主键
    protected $primaryKey = 'material_id';
    protected $dateFormat = 'Y-m-d H:i:s';
    /**
     * 需要转换成日期的属性
     * @var array
     */
    protected $dates = [
        'expire_time','push_time',
    ];
    /**
     * 应该被转换成原生类型的属性。
     * @var array
     */
    protected $casts = [
        'preview_data' => 'array',
    ];
    /**
     * 可以被批量赋值的属性。
     * @var array
     */
    protected $fillable = [
        'cat_id','type','media_id','is_forever','expire_time','preview_data'
    ];

    /**
     * 分类扩展
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
     */
    public function category()
    {
        return $this->belongsTo('App\Models\WxMaterialCategory','cat_id', 'cat_id');
    }

    /**
     * 图文列表
     * @return \Illuminate\Database\Eloquent\Relations\HasMany
     */
    public function news()
    {
        return $this->hasMany('App\Models\WxMaterialNew','material_id', 'material_id');
    }
}
